package _go

func isPalindrome(x int) bool {
	//所有小于0 的数都不是回文数
	//所有末尾是0的数也都不是回文数 因为不可能有0开头是数
	if x < 0 || (x%10 == 0 && x != 0) {
		return false
	}

	//基本思路是翻转回文数后边的数字 对比两个数字是不是一样大
	re := 0
	for x > re {
		re = x%10 + re*10 //个位加上扩大10后的数
		x /= 10           //x除10 减掉以为
	}

	//兼容奇数位和偶数位的情况
	return x == re || x == re/10
}
